Skip to content

Android usb转串口

插件 ID: 26400
来源: https://ext.dcloud.net.cn/plugin?id=26400
usb串口通信 USB串口转485模块通信,无需ROOT,获取设备信息、连接设备、配置参数、发送数据、设置监听、接收数据、关闭连接等功能


更新记���

                                                    1.0.0(2025-12-31)

初始化

平台兼容性

uni-app(4.63)

| Vue2 | Vue3 | Chrome | Safari | app-vue | app-nvue | Android | iOS | 鸿蒙 | | | √ | √ |

  • |
  • | √ | √ | 5.0 |
  • |
  • | | | 微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 小红书小程序 | 快应用-华为 | 快应用-联盟 | | |
  • |
  • |
  • |
  • |
  • |
  • |
  • |
  • |
  • |
  • |
  • |
  • | |

uni-app x(4.35)

| Chrome | Safari | Android | Android插件版本 | iOS | 鸿蒙 | 微信小程序 | | |

  • |
  • | 5.0 | 1.0.0 |
  • |
  • |
  • | |

android usb 外设通信

插件测试使用方法

1.选择试用,绑定要试用的项目appid, 2.选择后下载到对应的本地项目, 3.按照文档 -》把插件引入项目(即 import {UsbSerialHelper} from "@/uni_modules/xtf-usbserialhelper" 需要先引入), 4.发布-》云打包-》选择制作基座-》打包等基座制作完成 5.运行 -》 运行到手机或模拟器-》运行到Androidapp基座-》选择使用自定义基座运行-》选择手机-》运行 6.之前若安装过基座 ,请卸载之前的基座

程序开发步骤

1.先获取usb 设备列表 2.选择需要通信的usb 设备 3.申请相关usb设备的usb 权限 4.打开usb 设备 5.设置设备的波特率等 6.选择设备usb通信端口 7 通信 读写 8.关闭设备

引入

import {UsbSerialHelper} from "@/uni_modules/xtf-usbserialhelper"
var usbHelper=new UsbSerialHelper();

监听usb 设备插拔

uniappx

usbHelper.onListenerUsbListner(function(state:boolean,b:DeviceData){
    // state 为true  表示usb设备插入  false 拔出     b 为设备信息
})

uniapp

usbHelper.onListenerUsbListner(function(state,b){
    // state 为true  表示usb设备插入  false 拔出     b 为设备信息
})

检测设备是否有usb权限

// 参数为 DeviceData的deviceName
 var have  =usbHelper.haveusbper("/dev/bus/usb/005/003");

申请设备usb权限

uniappx

// 参数为 DeviceData的deviceName
 usbHelper.reqUsbPer("/dev/bus/usb/005/003",function(b:boolean){
     // b 为true 表示有权限 false 表示无权限
 });

uniapp

// 参数为 DeviceData的deviceName
 usbHelper.reqUsbPer("/dev/bus/usb/005/003",function(b){
     // b 为true 表示有权限 false 表示无权限
 });

获取设备已经链接的usb设备

uniappx

var devices:DeviceData[]= usbHelper. getAllUsbDevice();

uniapp

var devices= usbHelper. getAllUsbDevice();

设置波特率等

 // baudRate 波特率 , 
 // dataBits 数据位:5,6,7,8 , 
 // stopBits  停止位:1、2  , 
  // parity 校验位::0(不校验)、1(奇校验)、2(偶校验)
usbHelper.setSerialData(9600,8,1,0);

链接usb 外设

// 参数为 DeviceData的deviceName
  var b=usbHelper.openDevice("/dev/bus/usb/005/003");//5000 是超时时间

获取设备接口数量(需要打开设备)

var count=  usbHelper.getInterfaceCount();

选择usb设备接口

var b=  usbHelper.selectUsbInterface(0); //b 表示成功

是否打开

var o=usbHelper.isOpen();

发送数据

uniappx

// 5566A1C2 表示 16进制字符  5000 为超时时间  参数3 为发送状态回调
usbHelper.writeData("5566A1C2",5000,function(b:boolean){
})

uniapp

// 5566A1C2 表示 16进制字符  5000 为超时时间  参数3 为发送状态回调
usbHelper.writeData("5566A1C2",5000,function(b){
})

监听usb 数据

uniappx

usbHelper.onAutoReadDataTask(function(state:boolean, data:string){
    // data 为16进制字符数据
})

uniapp

usbHelper.onAutoReadDataTask(function(state,data){
    // data 为16进制字符数据
})

取消监听usb数据

usbHelper.stopAutoReadTask();

关闭

usbHelper.close();

开发文档

UTS 语法UTS API插件UTS uni-app兼容模式组件UTS 标准模式组件Hello UTS

MIT Licensed